OpenStack Havana - Configure Swift#2 (Proxy Node)
2013/10/28 |
Configure OpenStack Object Storage (Swift).
This example configures with the environment below.
| +------------+ | +-----------+ | Auth Node |10.0.0.30 | 10.0.0.50| Proxy | | (Keystone) |------------+------------| Node | +------------+ | +-----------+ | +------------------------+-----------------------+ | | | |10.0.0.51 |10.0.0.52 |10.0.0.53 +-----------+ +-----------+ +-----------+ | Storage | | Storage | | Storage | | Node1 |------------| Node2 |-----------| Node3 | +-----------+ +-----------+ +-----------+ |
Configure Proxy Node in this section.
|
|
[1] | Install Swift-Proxy |
# install from EPEL OpenStack, EPEL [root@proxy ~]# yum --enablerepo=openstack-havana,epel -y install openstack-swift-proxy memcached openssh-clients
|
[2] | Configure Swift-Proxy |
[root@proxy ~]#
vi /etc/swift/proxy-server.conf # line 30: change like follows (the value is the one set in Keystone) [filter:authtoken] paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory admin_tenant_name = service admin_user = swift admin_password = servicepassword auth_host = 10.0.0.30 auth_port = 35357 auth_protocol = http signing_dir = /tmp/keystone-signing-swift
[root@proxy ~]#
vi /etc/swift/swift.conf # change (it is shared between Nodes - any words you like) [swift-hash] swift_hash_path_suffix = swift_shared_path
mkdir /tmp/keystone-signing-swift [root@proxy ~]# chown swift. /tmp/keystone-signing-swift |
[3] | Create Swift Ring files. |
[root@proxy ~]#
swift-ring-builder /etc/swift/account.builder create 12 3 1 [root@proxy ~]# swift-ring-builder /etc/swift/container.builder create 12 3 1 [root@proxy ~]# swift-ring-builder /etc/swift/object.builder create 12 3 1
[root@proxy ~]#
swift-ring-builder /etc/swift/account.builder add r0z0-10.0.0.51:6002/device0 100 Device d0r0z0-10.0.0.51:6002R10.0.0.51:6002/device0_"" with 100.0 weight got id 0 [root@proxy ~]# swift-ring-builder /etc/swift/container.builder add r0z0-10.0.0.51:6001/device0 100 Device d0r0z0-10.0.0.51:6001R10.0.0.51:6001/device0_"" with 100.0 weight got id 0 [root@proxy ~]# swift-ring-builder /etc/swift/object.builder add r0z0-10.0.0.51:6000/device0 100 Device d0r0z0-10.0.0.51:6000R10.0.0.51:6000/device0_"" with 100.0 weight got id 0
[root@proxy ~]#
swift-ring-builder /etc/swift/account.builder add r1z1-10.0.0.52:6002/device1 100 Device d1r1z1-10.0.0.52:6002R10.0.0.52:6002/device1_"" with 100.0 weight got id 1 [root@proxy ~]# swift-ring-builder /etc/swift/container.builder add r1z1-10.0.0.52:6001/device1 100 Device d1r1z1-10.0.0.52:6001R10.0.0.52:6001/device1_"" with 100.0 weight got id 1 [root@proxy ~]# swift-ring-builder /etc/swift/object.builder add r1z1-10.0.0.52:6000/device1 100 Device d1r1z1-10.0.0.52:6000R10.0.0.52:6000/device1_"" with 100.0 weight got id 1
[root@proxy ~]#
swift-ring-builder /etc/swift/account.builder add r2z2-10.0.0.53:6002/device2 100 Device d2r2z2-10.0.0.53:6002R10.0.0.53:6002/device2_"" with 100.0 weight got id 2 [root@proxy ~]# swift-ring-builder /etc/swift/container.builder add r2z2-10.0.0.53:6001/device2 100 Device d2r2z2-10.0.0.53:6001R10.0.0.53:6001/device2_"" with 100.0 weight got id 2 [root@proxy ~]# swift-ring-builder /etc/swift/object.builder add r2z2-10.0.0.53:6000/device2 100 Device d2r2z2-10.0.0.53:6000R10.0.0.53:6000/device2_"" with 100.0 weight got id 2
[root@proxy ~]#
[root@proxy ~]# swift-ring-builder /etc/swift/account.builder rebalance Reassigned 4096 (100.00%) partitions. Balance is now 0.00. [root@proxy ~]# swift-ring-builder /etc/swift/container.builder rebalance Reassigned 4096 (100.00%) partitions. Balance is now 0.00. [root@proxy ~]# swift-ring-builder /etc/swift/object.builder rebalance Reassigned 4096 (100.00%) partitions. Balance is now 0.00. chown swift. /etc/swift/*.gz [root@proxy ~]# /etc/rc.d/init.d/memcached start Starting memcached: [ OK ] [root@proxy ~]# /etc/rc.d/init.d/openstack-swift-proxy start Starting swift-proxy-server: [ OK ] [root@proxy ~]# chkconfig memcached on [root@proxy ~]# chkconfig openstack-swift-proxy on |